約 3,315,650 件
https://w.atwiki.jp/aerocats/pages/16.html
mountコマンドは、デバイスをLinuxの任意の地点に配置するというもの。 HDDをパーティション単位で好きな箇所にマウントする、USBメモリやCD/DVDドライブをマウントする、など、デバイスをファイルシステムとして取り扱う。 標準Linuxでのmountコマンド 概要 helpを表示してみる。 ~ # mount --help BusyBox v1.1.1 (2007.04.06-12 02+0000) multi-call binary Usage mount [flags] DEVICE NODE [-o options,more-options] Mount a filesystem. Filesystem autodetection requires /proc be mounted. Flags -a Mount all filesystems in fstab -o option One of many filesystem options, listed below -r Mount the filesystem read-only -t fs-type Specify the filesystem type -w Mount for reading and writing (default) Options for use with the "-o" flag async/sync Writes are asynchronous / synchronous atime/noatime Enable / disable updates to inode access times dev/nodev Allow use of special device files / disallow them exec/noexec Allow use of executable files / disallow them loop Ignored (loop devices are autodetected) suid/nosuid Allow set-user-id-root programs / disallow them remount Re-mount a mounted filesystem, changing its flags ro/rw Mount for read-only / read-write bind Bind a directory to an additional location move Relocate an existing mount point. There are EVEN MORE flags that are specific to each filesystem You ll have to see the written documentation for those filesystems ~ # 標準LinuxでのmountコマンドはBusyBoxが動作する。 コマンドの実行 HDD装着(未フォーマット) mountコマンドの実行結果は以下。 ~ # mount /dev/root on / type jffs2 (rw,noatime) proc on /proc type proc (rw,nodiratime) sysfs on /sys type sysfs (rw) usbfs on /proc/bus/usb type usbfs (rw) devpts on /dev/pts type devpts (rw) /dev/ram1 on /mnt/ram type tmpfs (rw) /dev/mtd3 on /mnt/mtd type jffs2 (rw,noatime) この出力を表にまとめてみる。 デバイス名 マウント先 タイプ マウントオプション /dev/root / jffs2 rw,noatime proc /proc proc rw,nodiratime sysfs /sys sysfs rw usbfs /proc/bus/usb usbfs rw devpts /dev/pts devpts rw /dev/ram1 /mnt/ram tmpfs rw /dev/mtd3 /mnt/mtd jffs2 rw,noatime
https://w.atwiki.jp/aerocats/pages/57.html
起動メッセージ シリアルコンソール使用 LAN接続済み HDD装着 Orion1 CPU = Low === KURO U-Boot. === ** LOADER ** ** KUROBOX BOARD KURO_BOX LE (CFG_ENV_ADDR=fffff000) U-Boot 1.1.1 (Apr 10 2007 - 18 10 08) Marvell version 1.12.1 - TINY DRAM CS[0] base 0x00000000 size 128MB DRAM Total size 128MB [256kB@fffc0000] Flash 256 kB Addresses 20M - 0M are saved for the U-Boot usage. Mem malloc Initialization (20M - 16M) Done NAND 256 MB Soc 88F5182 A2 CPU ARM926 (Rev 0) running @ 500Mhz Orion 1 streaming disabled SysClock = 250Mhz , TClock = 166Mhz USB 0 host mode USB 1 host mode PCI 0 PCI Express Root Complex Interface PCI 1 Conventional PCI, speed = 33000000 Net egiga0 [PRIME] Using 88E1118 phy hit any key to switch tftp boot. Hit any key to stop autoboot 2 1 0 system_bootend Hit any key to stop autoboot 3 2 1 0 Reset IDE Marvell Serial ATA Adapter Integrated Sata device found Device 0 OK Model ST380815AS Firm 3.AAC Ser# 9QZ15T5J Type Hard Disk Supports 48-bit addressing Capacity 76319.0 MB = 74.5 GB (156301488 x 512) Using device ide0, partition 1 Loading from block device ide device 0, partition 1 Name hda1 Type U-Boot File /uImage.buffalo 1736436 bytes read stop_sound ## Booting image at 00100000 ... Image Name Linux-2.6.12.6-arm1 Created 2007-02-08 6 00 09 UTC Image Type ARM Linux Kernel Image (uncompressed) Data Size 1736372 Bytes = 1.7 MB Load Address 00008000 Entry Point 00008000 Verifying Checksum ... OK OK Starting kernel ... arg console=ttyS0,115200 root=/dev/sda2 rw panic=5 BOOTVER=1.09 CONFIG_BUFFALO_PLATFORM CONFIG_BUFFALO_KUROBOX --- Uncompressing Linux................................................................................................................. done, booting the kernel. Linux version 2.6.12.6-arm1 (root@dev-hara) (gcc version 3.4.4 (release) (CodeSourcery ARM 2005q3-2)) #2 Thu Feb 8 15 00 20 JST 2007 CPU ARM926EJ-Sid(wb) [41069260] revision 0 (ARMv5TEJ) CPU0 D VIVT write-back cache CPU0 I cache 32768 bytes, associativity 1, 32 byte lines, 1024 sets CPU0 D cache 32768 bytes, associativity 1, 32 byte lines, 1024 sets Machine MV-88fxx81 Using UBoot passing parameters structure Sys Clk = 250000000, Tclk = 166664740 Memory policy ECC disabled, Data cache writeback Built 1 zonelists Kernel command line console=ttyS0,115200 root=/dev/sda2 rw panic=5 BOOTVER=1.09 PID hash table entries 1024 (order 10, 16384 bytes) Console colour dummy device 80x30 Dentry cache hash table entries 32768 (order 5, 131072 bytes) Inode-cache hash table entries 16384 (order 4, 65536 bytes) Memory 128MB 0MB 0MB 0MB = 128MB total Memory 126208KB available (3037K code, 425K data, 112K init) Mount-cache hash table entries 512 CPU Testing write buffer coherency ok NET Registered protocol family 16 serial_initialize_ttyS1 (Debug) ttyS1 is initialized. config_device_cs Error Unknown board CPU Interface ------------- SDRAM_CS0 ....base 00000000, size 128MB SDRAM_CS1 ....disable SDRAM_CS2 ....disable SDRAM_CS3 ....disable PEX0_MEM ....base e0000000, size 128MB PEX0_IO ....base f2000000, size 1MB PCI0_MEM ....base e8000000, size 128MB PCI0_IO ....base f2100000, size 1MB INTER_REGS ....base f1000000, size 1MB DEVICE_CS0 ....base fa000000, size 2MB DEVICE_CS1 ....base f4000000, size 32MB DEVICE_CS2 ....base fa800000, size 1MB DEV_BOOCS ....base ff800000, size 8MB CRYPTO ENG ....no such Flash bankwidth 1, base ff800000, size 400000 BUFFALO KUROBOX FLASH size 4096[KB] Marvell Development Board (LSP Version 1.10.3.patch5_DB_NAS)-- BUFFALO_BOARD_KUROBOX Soc 88F5182 A2 Detected Tclk 166664740 and SysClk 250000000 Marvell USB EHCI Host controller #0 c04e4b00 Marvell USB EHCI Host controller #1 c04e4a40 pexBarOverlapDetect winNum 2 overlap current 0 mvPexInit Warning Bar 2 size is illigal it will be disabled please check Pex and CPU windows configuration PCI bus0 Fast back to back transfers enabled PCI bus1 Fast back to back transfers enabled SCSI subsystem initialized usbcore registered new driver usbfs usbcore registered new driver hub Use the XOR engines (offloading) for enhancing the following functions o RAID 5 Xor calculation o kernel memcpy o kenrel memzero o copy user to/from kernel buffers Number of XOR engines to use 2 cesadev_init(c00122e0) Fast Floating Point Emulator V0.9 (c) Peter Teichmann. inotify device minor=63 JFFS2 version 2.2. (NAND) (C) 2001-2003 Red Hat, Inc. SGI XFS with no debug enabled Serial 8250/16550 driver $Revision 1.90 $ 4 ports, IRQ sharing disabled ttyS0 at MMIO 0x0 (irq = 3) is a 16550A ttyS1 at MMIO 0x0 (irq = 4) is a 16550A io scheduler noop registered io scheduler anticipatory registered io scheduler deadline registered io scheduler cfq registered RAMDISK driver initialized 3 RAM disks of 32768K size 1024 blocksize loop loaded (max 8 devices) Marvell Gigabit Ethernet Driver egiga o Ethernet descriptors in DRAM o DRAM SW cache-coherency o Checksum offload enabled o Loading network interface ** egiga_init_module (10) eth0 Intergrated Sata device found scsi0 Marvell SCSI to SATA adapter scsi1 Marvell SCSI to SATA adapter Vendor Seagate Model ST380815AS Rev 3.AA Type Direct-Access ANSI SCSI revision 03 SCSI device sda 156301488 512-byte hdwr sectors (80026 MB) SCSI device sda drive cache write back SCSI device sda 156301488 512-byte hdwr sectors (80026 MB) SCSI device sda drive cache write back sda sda1 sda2 sda3 sda4 Attached scsi disk sda at scsi0, channel 0, id 0, lun 0 Attached scsi generic sg0 at scsi0, channel 0, id 0, lun 0, type 0 physmap flash device 400000 at ff800000 Found SST 39LF020 phys_mapped_flash Found 1 x8 devices at 0x0 in 8-bit bank number of JEDEC chips 1 cfi_cmdset_0002 Disabling erase-suspend-program due to code brokenness. RedBoot partition parsing not available NAND device Manufacturer ID 0x20, Chip ID 0xda (ST Micro NAND 256MiB 3,3V 8-bit) Scanning device for bad blocks Using static partition definition Creating 3 MTD partitions on "nand_mtd" 0x00000000-0x00400000 "uImage" 0x00400000-0x04400000 "rootfs" 0x04400000-0x10000000 "extra" usbmon debugs is not available ehci_platform ehci_platform.4523 EHCI Host Controller ehci_platform ehci_platform.4523 new USB bus registered, assigned bus number 1 ehci_platform ehci_platform.4523 irq 17, io mem 0x00000000 ehci_platform ehci_platform.4523 park 0 ehci_platform ehci_platform.4523 USB 0.0 initialized, EHCI 1.00, driver 10 Dec 2004 hub 1-0 1.0 USB hub found hub 1-0 1.0 1 port detected ehci_platform ehci_platform.16781 EHCI Host Controller ehci_platform ehci_platform.16781 new USB bus registered, assigned bus number 2 ehci_platform ehci_platform.16781 irq 12, io mem 0x00000000 ehci_platform ehci_platform.16781 park 0 ehci_platform ehci_platform.16781 USB 0.0 initialized, EHCI 1.00, driver 10 Dec 2004 hub 2-0 1.0 USB hub found hub 2-0 1.0 1 port detected USB Universal Host Controller Interface driver v2.2 Initializing USB Mass Storage driver... usbcore registered new driver usb-storage USB Mass Storage support registered. usbcore registered new driver usbhid drivers/usb/input/hid-core.c v2.01 USB HID core driver mice PS/2 mouse device common for all mice md raid0 personality registered as nr 2 md raid1 personality registered as nr 3 md raid5 personality registered as nr 4 raid5 measuring checksumming speed arm4regs 304.000 MB/sec 8regs 215.200 MB/sec 32regs 249.200 MB/sec raid5 using function arm4regs (304.000 MB/sec) md md driver 0.90.1 MAX_MD_DEVS=256, MD_SB_DISKS=27 Buffalo Platform Linux Driver(Light) 0.01 installed. MICON ctrl (C) BUFFALO INC. V.1.00 installed. Kernel event proc (C) BUFFALO INC. V.1.00 installed. MICON V2 (C) BUFFALO INC. V.1.00 installed. NET Registered protocol family 2 IP routing cache hash table of 1024 buckets, 8Kbytes TCP established hash table entries 8192 (order 4, 65536 bytes) TCP bind hash table entries 8192 (order 3, 32768 bytes) TCP Hash tables configured (established 8192 bind 8192) NET Registered protocol family 1 NET Registered protocol family 17 md Autodetecting RAID arrays. md autorun ... md ... autorun DONE. XFS mounting filesystem sda2 VFS Mounted root (xfs filesystem). Freeing init memory 112K init started BusyBox v1.1.1 (2006.11.29-02 37+0000) multi-call binary Starting pid 223, console /dev/ttyS0 /etc/init.d/rcS --- rcStart (hddroot) --- ===== Starting checkroot.sh ===== grep /proc/mtd No such file or directory grep /proc/mtd No such file or directory grep /proc/mtd No such file or directory chown unknown group name rpcuser grep /proc/buffalo/firmware No such file or directory rm /var/lock/perfmon is a directory rm /var/lock/printing is a directory rm /var/lock/subsys is a directory [Success] ===== Starting MountSystemFolders ===== [Success] Setting up swapspace version 1, size = 139825152 bytes Adding 136544k swap on /dev/sda3. Priority -1 extents 1 ===== Starting Kevent.sh ===== [Success] ===== Starting mount_share.sh ===== Mounting /dev/sda4 on /home as a xfs file system. XFS mounting filesystem sda4 Starting XFS recovery on filesystem sda4 (dev sda4) Ending XFS recovery on filesystem sda4 (dev sda4) Success. Mounting /dev/mtd3 on /mnt/mtd as a jffs2 file system. mount mount point /mnt/mtd does not exist Failed. [Failed ] ===== Starting sethostname.sh ===== hostname is setted to KUROBOX-PRO [Success] ===== Starting networking.sh ===== create network files.. IP=[dhcp], netmask=[], dgw=[], dns1=[], dns2=[] killall dhcpcd no process killed route SIOC[ADD|DEL]RT No such process Configuration network interface lo eth0 requesting DHCP tout=30[s] eth0 link down eth0 link up 5 , full duplex 5 , speed 100 Mbps 5 hostname is setted to KUROBOX-PRO [Success] ===== Starting smb.sh ===== $Starting SMB services $Starting NMB services [Success] ===== Starting FanController.sh ===== [Success] ===== Starting bootcomplete.sh ===== [Success] Starting pid 613, console /dev/ttyS0 /sbin/getty KUROUTOSHIKOU KUROBOX Series KUROBOX-PRO login
https://w.atwiki.jp/aerocats/pages/56.html
/proc /proc/mounts rootfs / rootfs rw 0 0 /dev/root / jffs2 rw,noatime 0 0 proc /proc proc rw,nodiratime 0 0 sysfs /sys sysfs rw 0 0 usbfs /proc/bus/usb usbfs rw 0 0 devpts /dev/pts devpts rw 0 0 /dev/ram1 /mnt/ram tmpfs rw 0 0 /dev/sda1 /mnt/disk1 xfs rw 0 0 /dev/mtd3 /mnt/mtd jffs2 rw,noatime 0 0 /proc/cpuinfo Processor ARM926EJ-Sid(wb) rev 0 (v5l) BogoMIPS 266.24 Features swp half thumb fastmult CPU implementer 0x41 CPU architecture 5TEJ CPU variant 0x0 CPU part 0x926 CPU revision 0 Cache type write-back Cache clean cp15 c7 ops Cache lockdown format C Cache format Harvard I size 32768 I assoc 1 I line length 32 I sets 1024 D size 32768 D assoc 1 D line length 32 D sets 1024 Hardware MV-88fxx81 Revision 0000 Serial 0000000000000000 /proc/devices Character devices 1 mem 2 pty 3 ttyp 4 /dev/vc/0 4 tty 4 ttyS 5 /dev/tty 5 /dev/console 5 /dev/ptmx 7 vcs 10 misc 13 input 21 sg 90 mtd 128 ptm 136 pts 180 usb Block devices 1 ramdisk 7 loop 8 sd 9 md 31 mtdblock 65 sd 66 sd 67 sd 68 sd 69 sd 70 sd 71 sd 128 sd 129 sd 130 sd 131 sd 132 sd 133 sd 134 sd 135 sd 254 mdp /proc/mtd dev size erasesize name mtd0 00040000 00001000 "phys_mapped_flash" mtd1 00400000 00020000 "uImage" mtd2 04000000 00020000 "rootfs" mtd3 0bc00000 00020000 "extra" /proc/interrupts CPU0 0 103019 Mv Timer Tick 3 438 serial 12 0 ehci_hcd usb2 17 0 ehci_hcd usb1 21 426 eth0 29 110 mvSata 30 20704 xor_chan0 31 0 xor_chan1 34 0 MiCon Err 0 /proc/ioports 00000000-000fffff PCI IO Primary 00100000-001fffff PCI IO Primary /proc/meminfo MemTotal 126328 kB MemFree 107748 kB Buffers 0 kB Cached 9640 kB SwapCached 0 kB Active 6332 kB Inactive 6100 kB HighTotal 0 kB HighFree 0 kB LowTotal 126328 kB LowFree 107748 kB SwapTotal 0 kB SwapFree 0 kB Dirty 0 kB Writeback 0 kB Mapped 5644 kB Slab 4616 kB CommitLimit 63164 kB Committed_AS 25104 kB PageTables 244 kB VmallocTotal 385024 kB VmallocUsed 4428 kB VmallocChunk 380412 kB
https://w.atwiki.jp/aerocats/pages/54.html
標準Linuxの/etc/init.dにある。 スクリプト #!/bin/sh PATH=/bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin export PATH DispSF(){ if [ $1 -eq 0 ] ; then echo [Success] else echo [Failed ] fi } MountSystemFolders(){ ##### mount system file systems.##### ##### we can t mount usbfs cause kernel don t have a usb driver statically. #### echo "===== Starting MountSystemFolders =====" echo -n "mounting procfs ... " mount -t proc proc /proc DispSF $? echo -n "mounting sysfs ... " mount -t sysfs sysfs /sys DispSF $? echo -n "mouting usbfs ... " if [ ! -e /proc/bus/usb ] ; then mkdir /proc/bus/usb -p fi mount -t usbfs usbfs /proc/bus/usb DispSF $? echo -n "remouting rootfs ... " mount -o rw,remount /dev/root / DispSF $? echo -n "mounting all devices ... " mount -a DispSF $? echo "" } BootendNotify(){ miconapl -b -a boot_end } RestoreClock(){ hwclock -l -s } echo "--- rcStart (NANDroot) ---" RestoreClock MountSystemFolders ldconfig /sbin/depmod -a . /usr/local/bin/kuro_lib for CMD in checkroot.sh Kevent.sh do exec_sh ${CMD} done for CMD in mount_share.sh sethostname.sh networking.sh httpd.sh telnet.sh inetd.sh do exec_sh ${CMD} done # file services for CMD in smb.sh do exec_sh ${CMD} done exec_sh clientUtil_servd.sh exec_sh bootcomplete.sh exec_sh FanController.sh exec_sh boss.sh /usr/local/bin/PlayBeep.sh /usr/local/music/SW_ON.msc
https://w.atwiki.jp/anthony/pages/25.html
ProFTPDとMySQLの仮想ホスティング構成 ProFTPDとMySQLの仮想ホスティング構成目的 導入するバージョン MySQLの導入 MySQLの初期設定 ProFTPDの導入 仮想ユーザの登録 ルータ配下の玄箱PROでFTPサーバ提供する際のNAT問題 関連パッケージ 目的 ProFTPDのLocal/Remoteのエンコーディング指定を可能にするパッチ適用 MySQLと連携した仮想ホスティング(Linux上にユーザ登録しないでFTPユーザ作成) ProFTPDにはQuotaも組み込み 本当はapt-getで出来るだけ簡単導入してProFTPDのパッチのみを適用する形にしたかったが、MySQLもビルドしないとうまくいかなったので、とりあえずはその作業内容を残します。 ※以前の情報では何とか出来上がった手順を載せていましたが、玄箱PROを組みなおす機会があったのでこうしんしました。ポイントはconfigureやmakeに何か足りずに失敗したらwget直後からやり直すことですね・・・変にconfigureしたものやmakeしたものが残っていると何がうまくいって何がうまくいっていないのか分からなくなりました・・・ 導入するバージョン MySQL 4.1.21 ProFTPD 1.3.0 MySQLの導入 ビルドに必要なパッケージを導入してからの手順です。 # apt-get install make gcc g++ zlib1g-dev libcdk5-dev # groupadd mysql # useradd -g mysql -d /usr/local mysql # cd /usr/local/src # wget http //downloads.mysql.com/archives/mysql-4.1/mysql-4.1.21.tar.gz # tar zxvf mysql-4.1.21.tar.gz # cd mysql-4.1.21 #/mysql-4.1.21# ./configure \ --with-charset=utf8 \ --with-extra-charsets=all \ --with-mysqld-user=mysql # make make終了まで2時間ほど待機。 make install には以下3つのパッケージが必要です。 # apt-get install autoconf2.13 # apt-get install automake1.4 # apt-get install libtool # make install # cp support-files/my-small.cnf /etc/my.cnf # /usr/local/bin/mysql_install_db # chmod -R 777 /usr/local/var MySQLの初期設定 password にはrootとして使用するパスワードをmysqladminで設定します。 その後mysqlデータベースに接続します。 # su mysql # /usr/local/bin/mysqld_safe # /usr/local/bin/mysqladmin -u root password password # /usr/local/bin/mysql -u root -p mysql Enter password Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 2 to server version 4.1.21-log Type help; or \h for help. Type \c to clear the buffer. mysql DELETE FROM user WHERE password= ; Query OK, 3 rows affected (0.00 sec) mysql select user, host, password from mysql.user; +------+-----------+-------------------------------------------+ | user | host | password | +------+-----------+-------------------------------------------+ | root | localhost | *EX4858XB86EXA20BX33X0AECXE8AX108X56BX7FA | +------+-----------+-------------------------------------------+ 1 row in set (0.00 sec) mysql exit Bye # exit システム起動時に自動実行されるようにupdate-rc.dで/etc/init.d/mysqlをdefaultsで登録する。 # cp /usr/local/src/mysql-4.1.21/support-files/mysql.server \ /etc/init.d/mysql # chmod +x /etc/init.d/mysql # update-rc.d mysql defaults ProFTPDの導入 サーバのエンコーディングとクライアントのエンコーディングが指定できるmod_codeconvを組み込んでビルドします。 # apt-get install patch # groupadd proftpd # useradd -g proftpd -d /dev/null -s /usr/sbin/nologin proftpd # cd /usr/local/src # wget ftp //ftp.proftpd.org/distrib/source/proftpd-1.3.0.tar.gz # wget http //www.hakusan.tsg.ne.jp/tjkawa/software/misc/proftpd-iconv/\ pack/proftpd-1.3.0-iconv.patch.gz # wget http //www.hayasoft.com/haya/linux/proftpd-nlst-patch/\ proftpd-1.3.0-nlst-ffftp.patch # tar -zxvf proftpd-1.3.0.tar.gz # gzip -d proftpd-1.3.0-iconv.patch.gz # patch -p0 proftpd-1.3.0-iconv.patch # patch -p0 proftpd-1.3.0-nlst-ffftp.patch # cd /usr/local/src/proftpd-1.3.0 # ./configure --prefix=/usr/local \ --with-modules=mod_codeconv mod_df\ mod_sql mod_sql_mysql mod_quotatab mod_quotatab_sql \ --with-libraries=/usr/local/lib/mysql \ --with-includes=/usr/local/include/mysql \ --disable-auth-pam # make # make install 導入されたproftpdに組み込まれたモジュールを確認します。mod_codeconv, mod_sql, mod_sql_mysql, mod_quotatab, mod_quotatab_sqlがあることを確認してください。 # proftpd -l Compiled-in modules mod_core.c mod_xfer.c mod_auth_unix.c mod_auth_file.c mod_auth.c mod_ls.c mod_log.c mod_site.c mod_delay.c mod_codeconv.c mod_df.c mod_sql.c mod_sql_mysql.c mod_quotatab.c mod_quotatab_sql.c mod_cap.c # mkdir /var/log/proftpd # chown -R proftpd proftpd /var/log/proftpd/ # vi /etc/init.d/proftpd proftpd起動用シェルを作成します。Debianのapt-getで導入されるシェルをそのまま使用します。 #!/bin/sh # Start the proftpd FTP daemon. PATH=/bin /usr/bin /sbin /usr/sbin DAEMON=/usr/sbin/proftpd NAME=proftpd # Defaults RUN="yes" OPTIONS="" PIDFILE=`grep -i pidfile /usr/local/etc/proftpd.conf | \ sed -e s/pidfile[\t ]\+//i ` if [ "x$PIDFILE" = "x" ]; then PIDFILE=/usr/local/var/proftpd.pid fi # Read config (will override defaults) [ -r /etc/default/proftpd ] . /etc/default/proftpd trap "" 1 trap "" 15 #test -f $DAEMON || exit 0 # # These compatibility funcs are here just for sarge backports. # They will be removed post-etch. # log_daemon_msg() { echo -n "$1 $2" } log_end_msg() { if [ $1 -ne 0 ]; then echo " failed!" else echo "." fi } [ -f /lib/lsb/init-functions ] . /lib/lsb/init-functions # # Servertype could be inetd|standalone|none. # In all cases check against inetd and xinetd support. # if ! egrep -qi "^[[ space ]]*ServerType.*standalone" \ /usr/local/etc/proftpd.conf then if [ $(dpkg-divert --list xinetd|wc -l) -eq 1 ] then if egrep -qi "server[[ space ]]*=[[ space ]]*/usr/sbin/proftpd" \ /etc/xinetd.conf 2 /dev/null || \ egrep -qi "server[[ space ]]*=[[ space ]]*/usr/sbin/proftpd" \ /etc/xinetd.d/* 2 /dev/null then RUN="no" INETD="yes" else if ! egrep -qi "^[[ space ]]*ServerType.*inetd" \ /usr/local/etc/proftpd.conf then RUN="yes" INETD="no" else RUN="no" INETD="no" fi fi else if egrep -qi "^ftp.*/usr/sbin/proftpd" /etc/inetd.conf 2 /dev/null then RUN="no" INETD="yes" else if ! egrep -qi "^[[ space ]]*ServerType.*inetd" \ /usr/local/etc/proftpd.conf then RUN="yes" INETD="no" else RUN="no" INETD="no" fi fi fi fi # /var/run could be on a tmpfs [ ! -d /var/run/proftpd ] mkdir /var/run/proftpd start() { log_daemon_msg "Starting ftp server" "$NAME" start-stop-daemon --start --quiet --pidfile "$PIDFILE" --exec $DAEMON \ -- $OPTIONS if [ $? != 0 ]; then log_end_msg 1 exit 1 else log_end_msg 0 fi } signal() { if [ "$1" = "stop" ]; then SIGNAL="TERM" log_daemon_msg "Stopping ftp server" "$NAME" else if [ "$1" = "reload" ]; then SIGNAL="HUP" log_daemon_msg "Reloading ftp server" "$NAME" else echo "ERR wrong parameter given to signal()" exit 1 fi fi if [ -f "$PIDFILE" ]; then start-stop-daemon --stop --signal $SIGNAL --quiet --pidfile \ "$PIDFILE" if [ $? = 0 ]; then log_end_msg 0 else SIGNAL="KILL" start-stop-daemon --stop --signal $SIGNAL --quiet \ --pidfile "$PIDFILE" if [ $? != 0 ]; then log_end_msg 1 [ $2 != 0 ] || exit 0 else log_end_msg 0 fi fi if [ "$SIGNAL" = "KILL" ]; then rm -f "$PIDFILE" fi else log_end_msg 0 fi } case "$1" in start) if [ "x$RUN" = "xyes" ] ; then start else if [ "x$INETD" = "xyes" ] ; then echo "ProFTPd is started from inetd/xinetd." else echo "ProFTPd warning cannot start neither \ in standalone nor in inetd/xinetd mode. Check \ your configuration." fi fi ;; force-start) if [ "x$INETD" = "xyes" ] ; then echo "Warning ProFTPd is started from inetd/xinetd \ (trying to start anyway)." fi start ;; stop) if [ "x$RUN" = "xyes" ] ; then signal stop 0 else if [ "x$INETD" = "xyes" ] ; then echo "ProFTPd is started from inetd/xinetd." else echo "ProFTPd warning cannot start neither \ in standalone nor in inetd/xinetd mode. Check \ your configuration." fi fi ;; force-stop) if [ "x$INETD" = "xyes" ] ; then echo "Warning ProFTPd is started from inetd/xinetd \ (trying to kill anyway)." fi signal stop 0 ;; reload) signal reload 0 ;; force-reload|restart) if [ "x$RUN" = "xyes" ] ; then signal stop 1 sleep 2 start else if [ "x$INETD" = "xyes" ] ; then echo "ProFTPd is started from inetd." else echo "ProFTPd warning cannot start neither \ in standalone nor in inetd/xinetd mode. Check \ your configuration." fi fi ;; *) echo "Usage /etc/init.d/$NAME {start|force-start|stop|\ force-stop|reload|restart|force-reload}" exit 1 ;; esac exit 0 # chmod +x /etc/init.d/proftpd # update-rc.d proftpd defaults # mkdir /var/lock/subsys/ # touch /var/lock/subsys/proftpd # ln -s /usr/local/sbin/proftpd /usr/sbin/proftpd # vi /usr/local/etc/proftpd/proftpd.conf proftpd.confを編集して下記をファイル上部に貼り付けます。 CharsetLocal UTF-8 CharsetRemote CP932 ServerIdent on "" RootLogin off ListOptions "-la" DefaultRoot ~ !wheel RequireValidShell off UseReverseDNS off IdentLookups off TimesGMT off TimeoutIdle 600 TimeoutLogin 300 TimeoutNoTransfer 600 TimeoutStalled 600 ShowSymlinks on MaxClientsPerHost 2 MaxHostsPerUser 1 LogFormat allinfo "%t %u (%a [%h]) [%s], %T, %m (%f)" LogFormat write "%t %u %F (%a)" LogFormat read "%t %u %F (%a)" LogFormat auth "%t %u (%a [%h])" ExtendedLog /var/log/proftpd/all.log ALL allinfo ExtendedLog /var/log/proftpd/write.log WRITE write ExtendedLog /var/log/proftpd/read.log READ read ExtendedLog /var/log/proftpd/auth.log AUTH auth Directory /* AllowOverwrite on AllowStoreRestart on AllowRetrieveRestart on /Directory ファイルの最後にMySQLとの連携とQuotaの設定を追加します。Anonymousブロックは必要に応じてコメントしておきます。 IfModule mod_sql_mysql.c SQLAuthenticate users SQLConnectInfo proftpd@localhost 3306 proftpd proftpd SQLAuthTypes Crypt SQLUserInfo users userid password uid gid homedir shell SQLGroupInfo groups groupname gid members AuthOrder mod_sql.c /IfModule IfModule mod_quotatab.c QuotaEngine on QuotaLog /var/log/proftpd/quota-log QuotaLimitTable sql /get-quota-limit QuotaTallyTable sql /get-quota-tally/update-quota-tally/\ insert-quota-tally SQLNamedQuery get-quota-limit SELECT "userid, quota_type, \ per_session, limit_type, bytes_in_avail, bytes_out_avail, \ bytes_xfer_avail, files_in_avail, files_out_avail, \ files_xfer_avail FROM quotalimits WHERE userid = %{0} \ AND quota_type = %{1} " SQLNamedQuery get-quota-tally SELECT "userid, quota_type, \ bytes_in_used, bytes_out_used, bytes_xfer_used, files_in_used, \ files_out_used, files_xfer_used FROM quotatallies WHERE \ userid = %{0} AND quota_type = %{1} " SQLNamedQuery update-quota-tally UPDATE "bytes_in_used = \ bytes_in_used + %{0}, bytes_out_used = bytes_out_used + %{1}, \ bytes_xfer_used = bytes_xfer_used + %{2}, files_in_used = \ files_in_used + %{3}, files_out_used = files_out_used + %{4}, \ files_xfer_used = files_xfer_used + %{5} WHERE userid = %{6} \ AND quota_type = %{7} " quotatallies SQLNamedQuery insert-quota-tally INSERT "%{0}, %{1}, %{2}, \ %{3}, %{4}, %{5}, %{6}, %{7}" quotatallies QuotaLock /tmp/proftpd-quota-lock QuotaShowQuotas on QuotaDisplayUnits Gb QuotaDirectoryTally on /IfModule 仮想ユーザの登録 仮想ユーザをproftpdデータベースに登録します。 # chown -R mysql mysql /usr/local/var/ # mysql -u root -p Enter password Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 55 to server version 4.1.21-log Type help; or \h for help. Type \c to clear the buffer. mysql create database proftpd; mysql CREATE TABLE groups ( groupname VARCHAR(30) NOT NULL , gid SMALLINT(5) UNSIGNED NOT NULL DEFAULT 1000, members varchar(255) default NULL, PRIMARY KEY ( groupname ), UNIQUE KEY gid (gid) ); mysql CREATE TABLE users ( userid varchar(30) NOT NULL, password varchar(30) NOT NULL, uid SMALLINT(5) UNSIGNED NOT NULL DEFAULT 1000, gid SMALLINT(5) UNSIGNED NOT NULL DEFAULT 1000, homedir varchar(255) default NULL, shell varchar(255) default /bin/true , PRIMARY KEY (userid), UNIQUE KEY uid (uid) ); mysql CREATE TABLE quotalimits ( userid VARCHAR(30) NOT NULL, quota_type ENUM("user", "group", "class", "all") NOT NULL, per_session ENUM("false", "true") DEFAULT true NOT NULL, limit_type ENUM("soft", "hard") DEFAULT soft NOT NULL, bytes_in_avail FLOAT DEFAULT 0 NOT NULL, bytes_out_avail FLOAT DEFAULT 0 NOT NULL, bytes_xfer_avail FLOAT DEFAULT 0 NOT NULL, files_in_avail INT UNSIGNED DEFAULT 0 NOT NULL, files_out_avail INT UNSIGNED DEFAULT 0 NOT NULL, files_xfer_avail INT UNSIGNED DEFAULT 0 NOT NULL ); mysql CREATE TABLE quotatallies ( userid VARCHAR(30) NOT NULL, quota_type ENUM("user", "group", "class", "all") DEFAULT user NOT NULL, bytes_in_used FLOAT DEFAULT 0 NOT NULL, bytes_out_used FLOAT DEFAULT 0 NOT NULL, bytes_xfer_used FLOAT DEFAULT 0 NOT NULL, files_in_used INT UNSIGNED DEFAULT 0 NOT NULL, files_out_used INT UNSIGNED DEFAULT 0 NOT NULL, files_xfer_used INT UNSIGNED DEFAULT 0 NOT NULL ); mysql GRANT SELECT,UPDATE,INSERT ON proftpd.* TO proftpd@localhost IDENTIFIED BY proftpd ; mysql INSERT INTO groups VALUES ( testgroup ,1000, ); mysql INSERT INTO users VALUES ( testuser ,encrypt( testuser ),1001,1000, /var/ftpdata , /bin/true ); mysql INSERT INTO quotalimits VALUES ( testuser , user , false , hard , 524288000,0,0,0,0,0); ProFTPdを起動してFTPで接続確認を行います。 # /etc/init.d/mysql restart # /etc/init.d/proftpd restart ルータ配下の玄箱PROでFTPサーバ提供する際のNAT問題 玄箱PROはルータ配下で稼動し割り当てられているIPアドレスはプライベートアドレス グローバルアドレスが割り当てられているルータからはポート番号(21)指定で玄箱PROへポート転送 家庭内のプライベートアドレスからFTP接続 インターネット越しのグローバルIPアドレスからのFTP接続 インターネット越しかつルータ配下のプライベートアドレスからのFTP接続 これらを実現するための設定がProFTPDでは可能であるようです。 proftpd.confに以下の設定を追加します。 MasqueradeAddress domain-name | global-ipaddr PassivePorts min-port-number max-port-number 私の環境ではDynamicDNSを使用しているので登録されているドメイン名を domain-name | global-ipaddr に設定しました。これでStandalone時は起動時にIPアドレスを取得する動作をします。常時稼動でIPアドレスの動的変更に対応する場合はinetdにした方が良さそうです。 ポート番号はPassive接続で使用するポートの最小と最大で参考程度に私は10020 10034と15ほど取って設定しました。(MaxInstancesを15に設定したので) この設定にあわせてPassice接続を受け付けるためにルータのポート転送設定に10020-10034を追加します。 追加したproftpd.confの設定でPASVコマンドに対してMasqueradeAddressで指定したアドレスで応答されるようになるため、プライベートアドレスを返されて接続先が分からない、といった状況にならなくなります。 あとはルータに設定したポート転送で玄箱PROに転送されてくればPassive接続完了です。 ただし、この設定ではPassive接続するとグローバルアドレスで応答されるため、家庭内ではPassive接続できません。Port接続のみ可能となります。 中ではPort接続、外ではPassive接続という使い分けになります。 関連パッケージ KUROBOX-PRO ~# apt-get install libcdk5-dev Reading package lists... Done Building dependency tree... Done The following extra packages will be installed libc6-dev libcdk5 libncurses5-dev linux-kernel-headers Suggested packages glibc-doc manpages-dev Recommended packages gcc c-compiler The following NEW packages will be installed libc6-dev libcdk5 libcdk5-dev libncurses5-dev linux-kernel-headers 0 upgraded, 5 newly installed, 0 to remove and 15 not upgraded. 1 not fully installed or removed. Need to get 1856kB/5843kB of archives. After unpacking 27.1MB of additional disk space will be used. Do you want to continue [Y/n]? KUROBOX-PRO ~# apt-get install gcc Reading package lists... Done Building dependency tree... Done The following extra packages will be installed binutils cpp cpp-4.1 gcc-4.1 libssp0 Suggested packages binutils-doc cpp-doc gcc-4.1-locales make manpages-dev autoconf automake1.9 libtool flex bison gdb gcc-doc gcc-4.1-doc Recommended packages libmudflap0-dev The following NEW packages will be installed binutils cpp cpp-4.1 gcc gcc-4.1 libssp0 0 upgraded, 6 newly installed, 0 to remove and 15 not upgraded. Need to get 16.6kB/4915kB of archives. After unpacking 12.3MB of additional disk space will be used. Do you want to continue [Y/n]? KUROBOX-PRO ~# apt-get install make Reading package lists... Done Building dependency tree... Done Suggested packages make-doc-non-dfsg The following NEW packages will be installed make 0 upgraded, 1 newly installed, 0 to remove and 15 not upgraded. Need to get 0B/381kB of archives. After unpacking 1229kB of additional disk space will be used. KUROBOX-PRO ~# apt-get install make Reading package lists... Done Building dependency tree... Done Suggested packages make-doc-non-dfsg The following NEW packages will be installed make 0 upgraded, 1 newly installed, 0 to remove and 15 not upgraded. Need to get 0B/381kB of archives. After unpacking 1229kB of additional disk space will be used. KUROBOX-PRO ~# apt-get install g++ Reading package lists... Done Building dependency tree... Done The following extra packages will be installed g++-4.1 libstdc++6-4.1-dev Suggested packages gcc-4.1-doc libstdc++6-4.1-doc The following NEW packages will be installed g++ g++-4.1 libstdc++6-4.1-dev 0 upgraded, 3 newly installed, 0 to remove and 15 not upgraded. Need to get 3408kB of archives. After unpacking 11.7MB of additional disk space will be used. Do you want to continue [Y/n]? KUROBOX-PRO ~# apt-get install zlib1g-dev Reading package lists... Done Building dependency tree... Done The following NEW packages will be installed zlib1g-dev 0 upgraded, 1 newly installed, 0 to remove and 15 not upgraded. Need to get 0B/410kB of archives. After unpacking 602kB of additional disk space will be used. KUROBOX-PRO /usr/local/src# apt-get install patch Reading package lists... Done Building dependency tree... Done Suggested packages diff-doc The following NEW packages will be installed patch 0 upgraded, 1 newly installed, 0 to remove and 15 not upgraded. Need to get 0B/101kB of archives. After unpacking 197kB of additional disk space will be used. KUROBOX-PRO ~# apt-get install autoconf2.13 Reading package lists... Done Building dependency tree... Done The following extra packages will be installed autoconf m4 Suggested packages autobook autoconf-archive gnu-standards autoconf-doc Recommended packages automaken automake1.4 The following NEW packages will be installed autoconf autoconf2.13 m4 0 upgraded, 3 newly installed, 0 to remove and 15 not upgraded. Need to get 976kB of archives. After unpacking 3547kB of additional disk space will be used. Do you want to continue [Y/n]? KUROBOX-PRO ~# apt-get install automake1.4 Reading package lists... Done Building dependency tree... Done The following extra packages will be installed autotools-dev The following NEW packages will be installed automake1.4 autotools-dev 0 upgraded, 2 newly installed, 0 to remove and 15 not upgraded. Need to get 333kB of archives. After unpacking 1163kB of additional disk space will be used. Do you want to continue [Y/n]? KUROBOX-PRO ~# apt-get install libtool Reading package lists... Done Building dependency tree... Done Suggested packages libtool-doc automaken g77 fortran77-compiler gcj Recommended packages libltdl3-dev The following NEW packages will be installed libtool 0 upgraded, 1 newly installed, 0 to remove and 15 not upgraded. Need to get 328kB of archives. After unpacking 950kB of additional disk space will be used. Get 1 http //ftp.jaist.ac.jp etch/main libtool 1.5.22-4 [328kB] Fetched 328kB in 0s (679kB/s) Selecting previously deselected package libtool. (Reading database ... 17513 files and directories currently installed.) Unpacking libtool (from .../libtool_1.5.22-4_arm.deb) ... Setting up libtool (1.5.22-4) ... KUROBOX-PRO /usr/local/src# 最終更新日:2007-05-29
https://w.atwiki.jp/aerocats/pages/60.html
標準Linux 標準Linuxの/etc/fstabは以下のようになっている。 デバイスまたはラベル マウントポイント ファイルシステム オプション バックアップ指定 fsckの順位 proc /proc proc defaults 0 0 sysfs /sys sysfs defaults 0 0 devpts /dev/pts devpts gid=4,mode=620 0 0
https://w.atwiki.jp/aerocats/pages/62.html
/sbinとは /sbinの構成 実際に標準Linuxの/sbinがどのようになっているのかを見てみる。 コマンド 備考 説明 adjtimex BusyBoxのシンボリックリンク depmod dhcpcd e2fsck fsck.ext2のシンボリックリンク fdisk BusyBoxのシンボリックリンク freeramdisk BusyBoxのシンボリックリンク fsck BusyBoxのシンボリックリンク fsck.ext2 fsck.ext3 fsck.ext2のシンボリックリンク fsck.minix BusyBoxのシンボリックリンク getty BusyBoxのシンボリックリンク halt BusyBoxのシンボリックリンク hdparm BusyBoxのシンボリックリンク hwclock BusyBoxのシンボリックリンク ifconfig BusyBoxのシンボリックリンク ifdown BusyBoxのシンボリックリンク ifup BusyBoxのシンボリックリンク init BusyBoxのシンボリックリンク insmod BusyBoxのシンボリックリンク klogd BusyBoxのシンボリックリンク ldconfig loadkmap BusyBoxのシンボリックリンク logread BusyBoxのシンボリックリンク losetup BusyBoxのシンボリックリンク lsmod BusyBoxのシンボリックリンク makedevs BusyBoxのシンボリックリンク mdev BusyBoxのシンボリックリンク mke2fs mkfs.ext2のシンボリックリンク mkfs.ext2 mkfs.ext3 mkfs.ext2のシンボリックリンク mkfs.minix BusyBoxのシンボリックリンク mkswap BusyBoxのシンボリックリンク modinfo modprobe BusyBoxのシンボリックリンク nameif BusyBoxのシンボリックリンク pivot_root BusyBoxのシンボリックリンク poweroff BusyBoxのシンボリックリンク reboot BusyBoxのシンボリックリンク rmmod BusyBoxのシンボリックリンク route BusyBoxのシンボリックリンク runlevel BusyBoxのシンボリックリンク setconsole BusyBoxのシンボリックリンク shutdown start-stop-daemon BusyBoxのシンボリックリンク sulogin BusyBoxのシンボリックリンク swapoff BusyBoxのシンボリックリンク swapon BusyBoxのシンボリックリンク switch_root BusyBoxのシンボリックリンク sysctl BusyBoxのシンボリックリンク syslogd BusyBoxのシンボリックリンク tune2fs vconfig BusyBoxのシンボリックリンク watchdog BusyBoxのシンボリックリンク zcip BusyBoxのシンボリックリンク
https://w.atwiki.jp/aerocats/pages/39.html
標準Linuxの/usr/local/sbin/内にある。 スクリプト ~ # cat /usr/local/sbin/Fand #!/bin/sh CONF_FILE=/etc/fan.prof miconapl -a fan_set_speed full while do while do sleep 60 TEMP=`miconapl -a temp_get|grep temp=| sed -e "s/.*=//"` SPD=`miconapl -a fan_get_speed|grep fan_rpm=|sed -e "s/.*=//"` SSPD=`miconapl -a fan_set_speed|grep fan_speed=|sed -e "s/.*=//"` if [ -f ${CONF_FILE} ] ; then L_LIMIT=`grep ${SSPD} ${CONF_FILE}| awk {print $2} ` H_LIMIT=`grep ${SSPD} ${CONF_FILE}| awk {print $3} ` if [ "${TEMP}" -lt "${L_LIMIT}" ] ; then DIRECT=DOWN elif [ "${TEMP}" -gt "${H_LIMIT}" ] ; then DIRECT=UP else DIRECT=NO fi if [ "${DIRECT}" = "DOWN" -a "${SSPD}" = "slow" ] ; then SSPD_NEW=stop elif [ "${DIRECT}" = "DOWN" -a "${SSPD}" = "fast" -o "${DIRECT}" = "UP" -a "${SSPD}" = "stop" ] ; then SSPD_NEW=slow elif [ "${DIRECT}" = "DOWN" -a "${SSPD}" = "full" -o "${DIRECT}" = "UP" -a "${SSPD}" = "slow" ] ; then SSPD_NEW=fast elif [ "${DIRECT}" = "UP" -a "${SSPD}" = "fast" ] ; then SSPD_NEW=full else SSPD_NEW=${SSPD} fi miconapl -a fan_set_speed ${SSPD_NEW} fi done done ~ #
https://w.atwiki.jp/aerocats/pages/55.html
/binとは /binの構成 実際に標準Linuxの/binがどのようになっているのかを見てみる。 コマンド 備考 説明 addgroup BusyBoxのシンボリックリンク adduser BusyBoxのシンボリックリンク ash BusyBoxのシンボリックリンク bash bash2 BusyBoxのシンボリックリンク bbconfig BusyBoxのシンボリックリンク busybox cat BusyBoxのシンボリックリンク chattr BusyBoxのシンボリックリンク chgrp BusyBoxのシンボリックリンク chmod BusyBoxのシンボリックリンク chown BusyBoxのシンボリックリンク cp BusyBoxのシンボリックリンク cpio BusyBoxのシンボリックリンク date BusyBoxのシンボリックリンク dd BusyBoxのシンボリックリンク delgroup BusyBoxのシンボリックリンク deluser BusyBoxのシンボリックリンク df BusyBoxのシンボリックリンク dmesg BusyBoxのシンボリックリンク dumpkmap BusyBoxのシンボリックリンク echo BusyBoxのシンボリックリンク egrep BusyBoxのシンボリックリンク false BusyBoxのシンボリックリンク fdflush BusyBoxのシンボリックリンク fgrep BusyBoxのシンボリックリンク getopt BusyBoxのシンボリックリンク grep BusyBoxのシンボリックリンク gunzip BusyBoxのシンボリックリンク gzip BusyBoxのシンボリックリンク hostname BusyBoxのシンボリックリンク ip BusyBoxのシンボリックリンク ipaddr BusyBoxのシンボリックリンク ipcalc BusyBoxのシンボリックリンク iplink BusyBoxのシンボリックリンク iproute BusyBoxのシンボリックリンク iptunnel BusyBoxのシンボリックリンク kill BusyBoxのシンボリックリンク linux32 BusyBoxのシンボリックリンク linux64 BusyBoxのシンボリックリンク ln BusyBoxのシンボリックリンク login BusyBoxのシンボリックリンク ls BusyBoxのシンボリックリンク lsattr BusyBoxのシンボリックリンク mkdir BusyBoxのシンボリックリンク mknod BusyBoxのシンボリックリンク mktemp BusyBoxのシンボリックリンク more BusyBoxのシンボリックリンク mount BusyBoxのシンボリックリンク mountpoint BusyBoxのシンボリックリンク mt BusyBoxのシンボリックリンク mv BusyBoxのシンボリックリンク netstat BusyBoxのシンボリックリンク nice BusyBoxのシンボリックリンク pidof BusyBoxのシンボリックリンク ping BusyBoxのシンボリックリンク pipe_progress BusyBoxのシンボリックリンク printenv BusyBoxのシンボリックリンク ps BusyBoxのシンボリックリンク pwd BusyBoxのシンボリックリンク rm BusyBoxのシンボリックリンク rmdir BusyBoxのシンボリックリンク rpm BusyBoxのシンボリックリンク run-parts BusyBoxのシンボリックリンク sed BusyBoxのシンボリックリンク setarch BusyBoxのシンボリックリンク sh BusyBoxのシンボリックリンク sleep BusyBoxのシンボリックリンク stat BusyBoxのシンボリックリンク stty BusyBoxのシンボリックリンク su BusyBoxのシンボリックリンク sync BusyBoxのシンボリックリンク tar BusyBoxのシンボリックリンク touch BusyBoxのシンボリックリンク true BusyBoxのシンボリックリンク umount BusyBoxのシンボリックリンク uname BusyBoxのシンボリックリンク uncompress BusyBoxのシンボリックリンク unzip usleep BusyBoxのシンボリックリンク vi BusyBoxのシンボリックリンク watch BusyBoxのシンボリックリンク zcat BusyBoxのシンボリックリンク
https://w.atwiki.jp/aerocats/pages/2.html
ブログ内検索 and or メニュー トップページ 掲示板 更新履歴 取得中です。 未作成ページ telnet arm httpd fileコマンド カーネル sethostname.sh httpd.sh telnet.sh inetd.sh smb.sh clientutil_servd.sh bootcomplete.sh fancontroller.sh boss.sh パーティション routedコマンド gettyコマンド xinetd inetd ランレベル 共有ライブラリ bash syslog wgetコマンド lsコマンド シンボリックリンク dns hosts nsswitch.conf cpコマンド rmコマンド デバイス unix システムコール vfs tarコマンド fdiskコマンド mkdirコマンド nvramコマンド 環境変数について シェル dfコマンド sedコマンド grepコマンド routeコマンド ifconfigコマンド awkコマンド killallコマンド echoコマンド procコマンド -